<?php

namespace App\Providers;

use App\Models\Article;
use App\Models\Banner;
use App\Models\Configuration;
use App\Models\GoodsOrder;
use App\Models\Order;
use App\Models\PaymentThirdCode;
use App\Models\PaymentThirdPay;
use App\Observers\ArticleObserver;
use App\Observers\BannerObserver;
use App\Observers\ConfigurationObserver;
use App\Observers\OperationLogObserver;
use App\Observers\GoodsOrderObserver;
use App\Models\User;
use App\Observers\OrderObserver;
use App\Observers\PaymentThirdCodeObserver;
use App\Observers\PaymentThirdPayObserver;
use App\Observers\UserObserver;
use Dcat\Admin\OperationLog\Models\OperationLog;
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
    }

    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Schema::defaultStringLength(191);
        Configuration::observe(ConfigurationObserver::class);
        OperationLog::observe(OperationLogObserver::class);
        User::observe(UserObserver::class);
        Article::observe(ArticleObserver::class);
        Banner::observe(BannerObserver::class);
        PaymentThirdCode::observe(PaymentThirdCodeObserver::class);
        PaymentThirdPay::observe(PaymentThirdPayObserver::class);
        GoodsOrder::observe(GoodsOrderObserver::class);
        Order::observe(OrderObserver::class);

    }
}
